home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
newsgroups
/
misc.20020314-20021006
/
000222_fdc@columbia.edu_Wed Jul 17 18:43:22 EDT 2002.msg
< prev
next >
Wrap
Text File
|
2020-01-01
|
5KB
|
109 lines
Article: 13534 of comp.protocols.kermit.misc
Path: newsmaster.cc.columbia.edu!news.columbia.edu!news-not-for-mail
From: fdc@columbia.edu (Frank da Cruz)
Newsgroups: comp.protocols.kermit.misc
Subject: C-Kermit FTP Client Bugs Fixed
Date: 17 Jul 2002 18:42:41 -0400
Organization: Columbia University
Lines: 93
Message-ID: <ah4rt1$1qn$1@watsol.cc.columbia.edu>
NNTP-Posting-Host: watsol.cc.columbia.edu
X-Trace: newsmaster.cc.columbia.edu 1026945762 25054 128.59.39.139 (17 Jul 2002 22:42:42 GMT)
X-Complaints-To: postmaster@columbia.edu
NNTP-Posting-Date: 17 Jul 2002 22:42:42 GMT
Xref: newsmaster.cc.columbia.edu comp.protocols.kermit.misc:13534
The following bugs in C-Kermit's FTP client have been identified and fixed
since C-Kermit 8.0.201 was released:
. Security-related command-line option (-z) parsing.
. Some problems with secure host authentication.
. User authentication failure error messages were sometimes skipped.
. FTP PUT /SERVER-RENAME:, /RENAME-TO:, /MOVE-TO: switches were sticky.
. If you SET FTP DEB ON and then OFF, the MGET temp file is still kept.
. In FTP MGET /UPDATE, equal times spuriously caused download.
. SET TRANSFER MODE MANUAL didn't work for FTP.
. The FTP client never handled SET FILE INCOMPLETE DISCARD.
. Some spurious error messages.
Plus the following, which are more than one-liners:
. There was no good way to extract FTP protocol messages from a debug log.
Now you can "grep ^FTP debug.log", just as you can "grep ^TELNET
debug.log" for Telnet protocol messages.
. In FTP MGET /RECOVER, recovery was skipped if the local file was newer
than the remote. This would seem to make sense, but when a download is
interrupted, the partial file never gets the date of the remote file, so
the partial file is always newer, and recovery never works. Fixed by
removing the date check.
. When FTP DATES is ON, we set an incoming file's date only if the file was
received successfully. This was changed to set the file's date even if
the file was received only partially (assuming we can get the date from
server). This would seem to address the /RECOVER date problem but not
really, since not all partial files will have been downloaded with the
fixed Kermit.
. In FTP MGET /RECOVER <wildcard> <wildcard> ..., the first file in each
group was always downloaded. Diagnosis: Kermit sends "TYPE A" prior to
NLST (as it must). Then when it sends its first SIZE command, it's still
in ASCII mode, so the server sends the "ASCII size" rather than the
binary size, which is greater than the size of the local file (which was
downloaded in binary mode), so recovery is always attempted even when the
files are identical. Fixed by switching to the desired type before
sending the first SIZE command.
. In FTP MGET /EXCEPT:<pattern> used with SET XFER DISPLAY brief, files
that were skipped just said ERROR instead of saying why they were
skipped.
. If an FTP transfer was in progress but the FTP connection dropped and
automatic locus switching was enabled (as it is by default), the locus
did not change; thus (for example) a subsequent DELETE command made
Kermit send a REMOTE DELETE packet on stdout, rather than deleting local
files as you would expect.
. Suppose we were doing FTP MGET /UPDATE from a server directory of 1500
files. Kermit would send a SIZE command for every file unconditionally.
On some connections, e.g. to the Red Hat Rawhide server, each one could
take up to 30 seconds. That would be half a day. Fix: Don't send a SIZE
command during the selection phase unless a /SMALLER or /LARGER selector
was given. Similarly, don't send an MDTM command unless a date-related
selection switch was given. Also fixed FTP MGET to not send a SIZE
command when there is a name collision and FILE COLLISION is DISCARD,
even if /SMALLER or /LARGER were also specified.
. Made [M]GET and [M]PUT /UPDATE switch imply FTP DATES ON, since they
didn't work unless it was.
. Added the code to safely detect if the server supports the MDTM command,
which made it safe to change the default for FTP DATES from OFF to ON.
. Added FTP [M]GET /DATES-DIFFER, which is like /UPDATE except it selects
files that are newer or older, rather than only newer. This allows
updates from sources where files might be rolled back to earlier
versions. It's a bit dangerous if you use it without knowing what it's
for, since it allows older files to overwrite newer ones.
. Increased max number of /EXCEPT: patterns from 8 to 64 for file transfer
(not necessarily for other things).
. If an MGET with selection clauses results in no files transferred simply
because no files were selected, MGET now succeeds instead of failing.
. Interruption of MGET and MPUT by Ctrl-C generally would interrupt only
the current file, but then go on to the next one and would not break out
of a command file or macro. This should be fixed now.
The updated code for Unix is here:
http://www.columbia.edu/kermit/ckdaily.html
and a couple new FTP scripts were added to the library:
http://www.columbia.edu/kermit/ckscripts.html#inet
- Frank